Data-driven software architecture for digital sound processing and equalization

ABSTRACT

A digital sound processing design system for a vehicle audio system includes a computer and a design tool that is run by the computer. The design tool allows a user to define sound processing criteria that is stored in a template file. An audio signal processor is connected to the first and second real channel inputs of an audio source. Memory that is coupled to the audio signal processor stores the template file. The sound processing engine that is coupled to the audio signal processor and the memory reads the template file at run-time to obtain the sound processing criteria. The sound processing engine applies the sound processing criteria to the first and second real channel inputs. The design tool allows a user to create virtual channel inputs and outputs that are based, in part, on the first and second real channel inputs.

FIELD OF THE INVENTION

[0001] This invention relates to sound processing and more particularly to digital sound processing and equalization of audio signals for vehicle audio systems.

BACKGROUND OF THE INVENTION

[0002] The design of audio systems for vehicles involves the consideration of many different factors. The audio system designer selects the position and number of speakers in the vehicle. The desired frequency response of each speaker must also be determined. For example, the desired frequency response of a speaker that is located on the instrument panel may be different than the desired frequency response of a speaker that is located on the lower portion of the rear door panel.

[0003] The audio system designer must also consider how equipment variations impact the audio system. For example, an audio system in a convertible may not sound as good as the same audio system in the same model vehicle that is a hard top. The audio system options for the vehicle may also vary significantly. One audio option for the vehicle may include a basic 4-speaker system with 40 watts amplification per channel while another audio option may include a 12-speaker system with 200 watts amplification per channel. The audio system designer must consider all of these configurations when designing the audio system for the vehicle. For these reasons, the design of audio systems is time consuming and costly. The audio system designers must also have a relatively extensive background in signal processing and equalization.

[0004] Consumer expectations of vehicle sound quality have dramatically increased over the last decade. Consumers now expect a very high quality sound system in their vehicles. In addition to high-quality audio from conventional sources such as radios, compact discs, and tape players, vehicle audio systems are being integrated with cellular phones, navigation systems, and video systems. Each of these additional audio sources have channel inputs and audio processing requirements that may be different than the stereo head unit. Some vehicle audio systems employ advanced signal processing techniques to customize the listening environment. For example, some vehicle audio systems incorporate matrix surround sound processing that is similar to surround sound offered in home theater systems.

[0005] Surround sound processors combine the left and right input signals in different proportions to produce two or more output signals. The various combinations of the input audio signals may be mathematically described by a N×2 matrix. The matrix includes 2N matrix coefficients that define the proportion of the left and/or right input audio signals for a particular output signal. In the more general case, surround sound processors can also transform N input channels into M output channels using a N×M matrix of coefficients. U.S. Pat. Nos. 4,796,844 and 5,870,480 to Greisinger, which are hereby incorporated by reference, disclose a surround sound system that provides 5 or 7 channels from left-right stereo inputs.

[0006] As can be appreciated from the foregoing, a sound processing and equalization design tool that assists audio system designers in integrating multiple audio sources would be desirable. Sound processing and design tools that allow audio system designers to create custom sound processing and equalization for vehicle audio systems would also be desirable. It would also be desirable to reduce the level of experience and the time required to design the vehicle audio systems.

SUMMARY OF THE INVENTION

[0007] A digital sound processing design system for a vehicle audio system according to the invention includes a computer and a design tool that is run by the computer. The design tool allows a user to define sound processing criteria that is stored in a template file. An audio signal processor is connected to first and second real channel inputs of an audio source. Memory that is coupled to the audio signal processor stores the template file. The sound processing engine that is coupled to the audio signal processor and the memory reads the template file at run-time to obtain the sound processing criteria. The sound processing engine applies the sound processing criteria to the first and second real channel inputs. The design tool allows a user to create virtual channel inputs and outputs that are based, in part, on the first and second real channel inputs.

[0008] In still other features of the invention, the sound processing criteria includes a speed/gain function that various a gain factor of at least one input channel as a function of vehicle's speed. Filter profiles can also be applied to at least one of the first and second real channel inputs. Other sound processing criteria include channel gain, vehicle identification selectors, audio source selectors, delay, etc.

[0009] Still other objects, features and advantages will be apparent to skilled artisans after reviewing the specification, the drawings, and the claims that follow.

BRIEF DESCRIPTION OF THE DRAWINGS

[0010]FIG. 1 is a functional block diagram of a first exemplary signal processing system according to the present invention;

[0011]FIG. 2 is a functional block diagram of a second exemplary signal processing system according to the present invention;

[0012]FIG. 3 is a functional block diagram of a signal processing design tool and an audio signal processor;

[0013]FIG. 4 is a graphical user interface (GUI) for the signal processing design tool according to the present invention;

[0014]FIG. 5 is a gain setting dialog box of the signal processing design tool of FIG. 4;

[0015]FIG. 6 is a delay setting dialog box of the signal processing design tool of FIG. 4;

[0016]FIG. 7 is a first filter setting dialog box of the signal processing design tool of FIG. 4; and

[0017]FIG. 8 is a second filter setting dialog box of the signal processing design tool of FIG. 4.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0018] The ensuing detailed description provides preferred exemplary embodiments only and is not intended to limit the scope, applicability or configuration of the present invention. Rather, the ensuing detailed description of the preferred exemplary embodiments will provide those skilled in the art with an enabling description for implementing the preferred exemplary embodiments of the present invention. It being understood that various changes may be made in the function and arrangement of the elements without departing from the spirit and scope of the invention as set forth in the appended claims.

[0019] A digital sound processing system for a vehicle audio system according to the invention includes of a PC-based design tool with a communications link to a remote sound processing module. The remote sound processing module, located in the vehicle, processes audio signals from one or more sources including radios, DVD players, and satellite digital radio. The output of the remote sound processing module may drive other signal processing modules or speakers, in which case signal amplification is often employed. The signal processing done by the remote sound processing module can be configured via commands from a PC-based design tool transmitted via a serial-bus interface. The PC-based design tool allows the user to prepare the signal processing parameters for remote sound processing prior to establishing a communications link to the remote sound processing module. The design tool allows the user to customize the processing on each output channel. Processing blocks available to the user include a cross-bar mixer with surround-sound decoded elements, an infinite-impulse-response (IIR) filter bank, time alignment, and speed-dependent gain. The remote sound processing modules may also incorporate one or more virtual channels. A virtual channel is a channel whose output appears on the input vector of the crossbar mixer.

[0020] Referring now to FIG. 1, an exemplary audio signal processor 10 is illustrated. A head unit 12 generates a left channel 14 and a right channel 18. The left channel 14 is output to an analog to digital converter (ADC) 20-1. A first gain block 22 applies a scaling factor G_(l) to the digitized left channel. An output of the first gain block 22 is input to a crossbar matrix 26. Likewise, the right channel 18 of the head unit 12 is output to an ADC 20-2. A second gain block 28 applies a scaling factor G_(r) to the digitized right channel. An output of the second gain block 28 is input to the crossbar matrix 26.

[0021] A navigation unit 34 generates an analog output signal that is digitized by an ADC 20-3. A third gain block 38 applies a scaling factor G_(n) to the digitized navigation audio signal. An output of the third gain block 38 is input to the crossbar matrix 26. A cellular phone 42 generates an analog output signal that is digitized by an ADC 20-4. A fourth gain block 46 applies a scaling factor G_(c) to the digitized cellular audio signal. An output of the fourth gain block 46 is input to the crossbar matrix 26.

[0022] A summed signal 58 is output by the crossbar matrix 26 to a filter block 60. The filter block 60 includes digital filters that provide conventional filter functions such as allpass, lowpass, highpass, bandpass, peak or notch, treble shelving, base shelving and/or other audio filter functions. An output 62 of the filter block 60 is connected to a volume gain block 64. The gain of the volume gain block 64 is determined by vehicle input signals 66. For example, the vehicle input signals 66 preferably include vehicle speed that is provided by a vehicle data bus. The vehicle input signals 66 may also include vehicle state signals such as convertible top up, convertible top down, vehicle started, vehicle stopped, windows up, windows down, etc. Other input signals such as fade, balance, and volume from the head unit 12, the navigation unit 34 and/or the cellular phone are also employed.

[0023] An output 68 of the volume gain block 64 is input to a delay block 70. An output 72 of the delay block is input to a limiter 74. An output 76 of the limiter 74 is input to a digital to analog (DAC) converter 78. The limiter 74 may employ a clip detection block 80. The exemplary audio signal processor 10 of FIG. 1 employs passive matrix surround sound to mix N output channels from the left-right audio input channels. In other words, the passive matrix includes matrix coefficients that do not change over time. In a preferred embodiment, N is equal to 5 or 7. When N is equal to 5, the sound vehicle system preferably includes left front, right front, right rear, left rear and center speakers.

[0024] Referring now to FIG. 2, an alternate exemplary signal processing system 100 is shown. Reference numbers from FIG. 1 will be used where appropriate to denote similar elements. An active matrix surround sound decoder 110 additionally provides a S_Left channel 112, a S_Center channel 114, a S_Right channel 116, a left surround channel 120, and a right surround channel 124. The matrix coefficients of the active matrix surround sound decoder 110 vary over time. U.S. Pat. Nos. 4,796,844 and 5,870,480 to Greisinger, which are hereby incorporated by reference, disclose a surround sound system that describes the calculation of active matrix coefficients.

[0025] The S_Left channel 112 is associated with a fifth gain block 130 having a scaling factor G₁. The S_Center channel 114 is associated with a sixth gain block 132 having a scaling factor G_(c). The S_Right channel 116 is associated with a seventh gain block 134 having a scaling factor G_(r). The left surround channel 120 is associated with an eighth gain block 136 having a scaling factor G_(1s). The right surround channel 124 is associated with a ninth gain block 140 having a scaling factor G_(rs). Outputs of the gain blocks 22, 28, 38, 46, 130, 132, 134, 136 and 140 are input to the crossbar matrix 26.

[0026] Referring now to FIG. 3, a functional block diagram illustrates an audio signal processor 150 that preferably forms part of an amplifier 152 that is connected to the head unit 12. The audio signal processor 150 includes a microprocessor 154, memory 156, an input/output (I/O) interface 160, a sound processing and equalization engine 164, and a template file 168. The template file 168 includes input and output channel definitions, filter definitions, gain settings, and other designer-defined criteria as will be described more fully below. The real and virtual inputs and outputs are initially input to the template file using a text editor. Rather than hard-coding filters, gain settings, and other criteria, the audio signal processor 150 obtains the criteria at run-time from the template file 168. In other words, the audio signal processor 150 employs a data-driven architecture. The microprocessor 154 and the sound processing and equalization engine 164 utilize the designer-defined criteria set forth in the template file 168 to customize the audio signal processing and equalization. The memory 156 includes read only memory (ROM), random access memory (RAM), flash memory, and/or other suitable electronic memory. The template file 168 is preferably stored in the memory 156.

[0027] The present invention provides a sound processing design tool 170 that includes a graphical software program that is run on a computer 172. The computer 172 includes a microprocessor 174, memory 176 (including RAM, ROM, or other memory), a mouse 177, a display 178, and an I/O interface 180. The sound processing design tool 170 assists a designer with the creation of the template file 168 as will be described below. The template file 168 is used by the sound processing and equalization engine 164 at run-time.

[0028] Referring now to FIG. 4, a graphical user interface (GUI) 250 that is provided by the signal processing design tool 170 is shown. The GUI 250 includes a drop-down menu bar 254 with a plurality of drop-down menu items 258 such as File 258-1, Communications 258-2, Tools 258-3, Window 258-4 and Help 258-5. The designer preferably points and clicks in the GUI 250 using a mouse, a keyboard or any other input device. Objects within the design window 260 are positioned using scroll bars 264 and 266 in a conventional manner. The signal processing design tool 170 provides an output dialog box 270 for each output channel.

[0029] In the example depicted in FIG. 4, there are four real inputs and one virtual input. The four real inputs include right front, left front, right rear, left rear channel inputs. There are four real outputs and one virtual output in FIG. 4. The four real outputs include right front, left front, right rear and left rear channel outputs. The virtual channel output in FIG. 4 is defined by a fourth order highpass filter with a center frequency at 20 Hertz, an eighth order lowpass filter with a center frequency at 100 Hertz, and a gain of −2.51 on each of the four input channels. The sound processor depicted in FIG. 4 provides a bass summing function by combining the bass signals from each of the real input channels to form a virtual input channel. Each of the real output channels includes the summed base portions along with the real input signal. For example, the right front output channel includes the right front input channel (with a gain of 2.0) plus the virtual input channel (with a gain of 0.0).

[0030] The output dialog boxes 270 allow a designer to set the gain for each of the input channels. For example, the output dialog box 270-3 corresponds to the left rear output channel. Text boxes in a gain setting column 274 allow the designer to set the gain of the input channels for the left rear output channel. Text boxes that are left blank include a −100 dB gain by default. In the example illustrated in FIG. 4, the left rear output channel has a gain of 2.0 for the left rear input channel and a gain of 0.0 for the virtual input channel. When the designer double clicks on a particular text box in the gain setting column 274, a mix dialog box 276 that is depicted in FIG. 5 is launched.

[0031] Referring now to FIG. 5, the mix dialog box 276 includes first and second radio buttons 278 and 280 that allow a designer to select between decibel (dB) and linear gain settings. The text box 282 allows the designer to input the specific gain setting. A command button 284 allows the designer to delete a gain setting. A command button 286 allows a designer to update the gain setting. A command button 288 allows a designer to close the mix dialog box 276.

[0032] Referring to FIGS. 4 and 6, text boxes appearing in a mute column 290 allow the designer to mute one or more input channels. Double-clicking on any of the text boxes in the mute column 290 toggles the mute status of input channel from “Yes” to “No” or “No” to “Yes”. When the designer clicks on a filter command box 292, a first filter setting dialog box 294 (that can be seen in FIG. 6) is launched.

[0033] Referring now to FIG. 6, the first filter setting dialog box 294 lists filters that are currently set for the output channel and their position. In the example illustrated in FIG. 6, the left rear output channel has a second order low pass filter with a center frequency at 5000 Hz. Additional filters can be added by the designer. Command buttons 298, 300 and 302 allow the designer to delete a filter, plot a filter, and close the first filter setting dialog box 294, respectively. A text box 306 displays the filters currently designated for the output channel and their respective position. A command button 308 allows the designer to download additional filter profiles. A command button 310 allows the designer to launch a second filter setting dialog box 312 (illustrated in FIG. 7) that allows a designer to add a filter to the output channel.

[0034] Referring now to FIG. 7, the second filter setting dialog box 314 includes a filter selection frame 316 with a plurality of radio buttons 320 that are associated with a plurality of filter profiles. The filter profiles include allpass, lowpass, highpass, bandpass, peak or notch, treble shelving, and base shelving. Skilled artisans can appreciate that other filter profiles may be added without departing from the spirit of the invention. Text boxes 322, 324, 326, and 328 are associated with filter order, center frequency, gain and Q settings, respectively. As the designer selects from the different filters in the filter selection frame 316, the text boxes 322, 324, 326 and 328 are enabled or disabled depending upon the selected filter profile. For example, if the designer selects a low pass filter, the order and center frequency text boxes 322 and 324 are enabled and the gain and Q text boxes 326 and 328 are disabled. Command button 330 allows a designer to plot the gain response of the filter as a function of frequency in a display frame 332. A command button 340 allows the designer to add the selected filter to the amplifier. A cancel button 342 allows the designer to cancel changes.

[0035] Referring back to FIG. 4, a command button 350 allows the designer to plot the response of the output channel as a function of frequency and phase angle so that the developer can review changes that are made. A command button 354 allows the designer to mute all input channels for the output channel or to un-mute all input channels for the output channel. A command button 358 launches a delay dialog box 364 that is illustrated in FIG. 8.

[0036] Referring now to FIG. 8, the delay dialog box 364 includes radio buttons 366 and 368 that allow a designer to select the delay based on the number of samples or based on time in milliseconds. Text boxes 372 and 374 allow a designer to enter the delay. Command button 378 allows a designer to update the delay. A command button 388 allows the designer to close the delay dialog box 364.

[0037] Referring to FIGS. 4 and 9, a command button 370 allows a designer to send the template file from the computer to the amplifier via an RS232 port. Once the template file is downloaded into the amplifier, the amplifier begins processing the audio stream using the parameters in the template file. A command button 374 launches a passive mix dialog box 378. The passive mix dialog box 378 includes first and second text boxes 382 and 386 that allow the designer to input gain and angle settings for the left front and right front input channels. Third and fourth text boxes 388 and 390 allow the designer to input gain and angle settings for the left rear and right rear input channels. A command button 394 allows the designer to close the passive mix dialog box 378.

[0038] Referring to FIGS. 4 and 10, a command button 398 launches a speed gain dialog box 400 that allows a designer to set the gain of the output channel as a function of vehicle speed. The speed gain dialog box 400 includes pairs of dialog boxes 404-1, 404-2, 404-3, 404-4, and 404-5 that are associated with individual speed and gain settings. Polynomial line fitting may be employed to smooth the speed/gain function. A command button 408 allows the speed gain settings to be copied to all output channels. A command button 412 allows a designer to download speed gain functions. A command button 414 redraws the speed gain function. Command buttons 416 and 418 approve or cancel changes.

[0039] When the designer selects Tools 258-3 from the drop-down menu bar 254, various options including VIN (vehicle identification number) Code, Audio Source, Program Flash, Read Only, D.C. Offsets, and Copy Filters options are presented. If the designer selects the VIN Code option, a VIN Code dialog box 430 that is illustrated in FIG. 11 is launched. Referring now to FIG. 11, the first frame 432 includes a plurality of radio buttons 434 that allow a designer to select one of the characters of a VIN code. A second frame 436 allows a designer to select another character of the VIN code using a plurality of radio buttons 438. For example, the first frame 432 allows the designer to select the fifth character of the VIN code that specifies the vehicle model. The second frame 436 allows the designer to select the body style. Command buttons 440 and 442 allow the designer to update or close the VIN Code dialog box 430. The VIN Code dialog box 430 allows the designer to specify that a particular sound processing template applies only to particular vehicle models.

[0040] Referring now to FIGS. 4 and 12, when the designer selects the Audio Source option, an audio source dialog box 450 is launched. The audio source dialog box 450 includes a frame 452 that contains radio buttons 454 for selecting the audio source for the template file 168. Selections include no source info, AM, FM, tape, CD, DVD audio, and DVD video. A command button 456 allows a designer to close the audio source dialog box 450.

[0041] When the designer selects the Program Flash option on the tool drop-down menu, the user can update core signal processing engine software in the remote signal processing module. When the designer selects the DC Offsets option on the tool drop-down menu, the user can adjust the DC offset voltage output from the amplifier and store the new settings in non-voltage memory in the amplifier.

[0042] Referring now to FIGS. 4 and 13, when the designer selects the Copy Filters option on the tool drop-down menu, a copy filters dialog box 470 is launched. The copy filters dialog box 470 includes first and second text boxes 472 and 474 that allow the designer to designate source and destination channels. The source channel is the source for the filters and a destination channel is the destination where the filters are copied. The copy filters dialog box 470 allows the designer to quickly duplicate filters for other channels to expedite the design process. A command button 478 copies filters from the source channel set forth in text box 472 to the destination channel set forth in text box 474. A command button 480 cancels the copy filter operation.

[0043] The sound processing design tool creates the template file that contains the designer's settings for the sound processor. The settings are read by the sound processing and equalization engine at run-time and the desired sound processing and equalization is accomplished. Appendix A contains an exemplary template file for a bass summing application. Appendix B illustrates a 4-in, 6-out example with one virtual channel.

[0044] Other uses of virtual channels include speed dependent bass boost, tone control and loudness generation. Speed dependent bass boost increases or decreases bass as a function of vehicle speed. Speed dependent tone control varies bass, midrange or treble as a function of speed. Other uses of virtual channels will be apparent to skilled artisans.

[0045] As can be appreciated from the foregoing, the sound processing tool according to the present invention employs a data driven architecture that dramatically simplifies the coding of sound processing and equalization for audio systems. The sound processing tool allows a designer to create virtual input and output channels. In addition, the designer can specify the VIN Codes to which the sound processing design applies. The designer can specify different sound processing profiles, filters, gain, etc. for each audio input source. In addition, the designer can easily mix M output channels from N input channels. The straightforward GUI of the sound processing design tool allows designers with less experience and education to define sound processing and equalization for vehicle audio systems.

[0046] Those skilled in the art can now appreciate from the foregoing description that the broad teachings of the present invention can be implemented in a variety of forms. Therefore, while this invention has been described in connection with particular examples, thereof, the true scope of the invention should not be so limited since other modifications will become apparent to the skilled practitioner upon a study of the drawings, the specification and the following claims.

Appendix A

[0047] Vehicle: EQ0 AN VIRTUAL

[0048] VIN: AN_VIRTUAL

[0049] Number of Inputs: 5

[0050] Input[0]: Left Front

[0051] Input[1]: Right Front

[0052] Input[2]: Left Back

[0053] Input[3]: Right Back

[0054] Input[4]: Virtual In

[0055] Number of Outputs: 5

[0056] Output[0]: Left Front

[0057] Output[1]: Right Front

[0058] Output[2]: Left Back

[0059] Output[3]: Right Back

[0060] Output[4]: Virtual Out

[0061] SampleRate: 48000

[0062] CrossBar[0][0]: 1.258925412

[0063] CrossBar[0][1]: 0

[0064] CrossBar[0][2]: 0

[0065] CrossBar[0][3]: 0

[0066] CrossBar[0][4]: 1

[0067] CrossBar[1][0]: −0

[0068] CrossBar[1][1]: 1.258925412

[0069] CrossBar[1][2]: 0

[0070] CrossBar[1][3]: 0

[0071] CrossBar[1][4]: 1

[0072] CrossBar[2][0]: 0

[0073] CrossBar[2][1]: 0

[0074] CrossBar[2][2]: 1.258925412

[0075] CrossBar[2][3]: 0

[0076] CrossBar[2][4]: 1

[0077] CrossBar[3][0]: 0

[0078] CrossBar[3][1]: 0

[0079] CrossBar[3][2]: 0

[0080] CrossBar[3][3]: 1.244514612

[0081] CrossBar[3][4]: 1

[0082] CrossBar[4][0]: 0.749005

[0083] CrossBar[4][1]: 0.749005

[0084] CrossBar[4][2]: 0.749005

[0085] CrossBar[4][3]: 0.749005

[0086] CrossBar[4][4]: 0

[0087] Channel: 0

[0088] Number of Filters on Channel: 1

[0089] Filter Type: 0=allpass

[0090] Fs: 48000

[0091] Fc|Fo: 24000

[0092] Gain(db): 0

[0093] Order: 2

[0094] Channel: 1

[0095] Number of Filters on Channel: 1

[0096] Filter Type: 1=lowpass

[0097] Fs: 48000

[0098] Fc|Fo: 24000

[0099] Gain(db): 0

[0100] Order: 2

[0101] Channel: 2

[0102] Number of Filters on Channel: 1

[0103] Filter Type: 0=allpass

[0104] Fs: 48000

[0105] Fc|Fo: 24000

[0106] Gain(db): 0

[0107] Order: 2

[0108] Channel: 3

[0109] Number of Filters on Channel: 2

[0110] Filter Type: 1=lowpass

[0111] Fs: 48000

[0112] Fc|Fo: 24000

[0113] Gain(db): 0

[0114] Order: 2

[0115] Filter Type: 5=bass shelf

[0116] Fs: 48000

[0117] Fc|Fo: 24000

[0118] Gain(db): 0

[0119] Order: 2

[0120] Q: 3.434271942e-307

[0121] Channel: 4

[0122] Number of Filters on Channel: 2

[0123] Filter Type: 2=highpass

[0124] Fs: 48000

[0125] Fc|Fo: 20

[0126] Gain(db): 0

[0127] Order: 4

[0128] Filter Type: 1=lowpass

[0129] Fs: 48000

[0130] Fc|Fo: 100

[0131] Gain(db): 0

[0132] Order: 8

[0133] Samples of delay on channel[0]: 0

[0134] Samples of delay on channel[1]: 0

[0135] Samples of delay on channel[2]: 0

[0136] Samples of delay on channel[3]: 0

[0137] Samples of delay on channel[4]: 0

[0138] Screen X Coordinate[0]: 0

[0139] Screen Y Coordinate[0]: 225

[0140] Screen X Coordinate[1]: 0

[0141] Screen Y Coordinate[1]: 0

[0142] Screen X Coordinate[2]: 250

[0143] Screen Y Coordinate[2]: 225

[0144] Screen X Coordinate[3]: 250

[0145] Screen Y Coordinate[3]: 0

[0146] Screen X Coordinate[4]: 500

[0147] Screen Y Coordinate[4]: 225

[0148] Audio Source (FM, NAV OFF, CELL OFF): 1 APPENDIX B LF RF LB RB Virtual LF_HI 1.0 0.0 0.0 0.0 1.0 RF_HI 0.0 1.0 0.0 0.0 1.0 LF_LO 1.0 0.0 0.0 0.0 1.0 RF_LO 0.0 1.0 0.0 0.0 1.0 LB 0.0 0.0 1.0 0.0 1.0 RB 0.0 0.0 0.0 1.0 1.0 Virtual 0.25 0.25 0.25 0.25 0.0 < <ID_FILTERS> > CHANNEL TYPE ORDER FC GAIN Q RF_HI:1 HIGHPASS 2 500 0 RF_HI:1 LOWPASS 2 5000 0 RF_LO:3 BASS_SHELF 2 200 2.0 2 RF_LO:3 NOTCH 2 4400 −2.0 2 LF_LO:2 LOWPASS 2 5000 2.0 1 RB:5 TREBLE_SHELF 2 300 1.5 4 LB:4 HIGHPASS 4 400 0 Virtual:6 LOWPASS 4 120 0 < <ID_DELAY> > CHANNEL SAMPLES COMMENT 1 100 ˜0.0 ms 4 200 ˜0.0 ms 

What is claimed is:
 1. A digital sound processing design system for a vehicle audio system, comprising: a computer; and a design tool run by said computer that allows a user to define sound processing criteria and that stores said sound processing criteria in a template file.
 2. The digital sound processing design system of claim 1 further comprising: an audio signal processor that is connected to first and second real channel inputs of an audio source; memory coupled to said audio signal processor that stores said template file; and a sound processing engine that is coupled to said audio signal processor and said memory and that reads said template file to obtain said sound processing criteria.
 3. The digital sound processing design system of claim 2 wherein said sound processing engine reads said template file at run-time and applies said sound processing criteria to said first and second real channel inputs.
 4. The digital sound processing design system of claim 2 wherein said memory includes flash memory.
 5. The digital sound processing design system of claim 1 wherein said design tool creates virtual channel inputs.
 6. The digital sound processing design system of claim 5 wherein said virtual channel inputs are based on said first and second real channel inputs.
 7. The digital sound processing design system of claim 2 wherein said sound processing criteria includes a speed/gain function that varies a gain factor of at least one input channel as a function of vehicle speed.
 8. The digital sound processing design system of claim 2 wherein said sound processing criteria includes filter profiles that are applied to at least one of said first and second real channel inputs.
 9. The digital sound processing design system of claim 2 wherein said sound processing criteria includes gain settings that are applied to at least one of said first and second real channel inputs.
 10. The digital sound processing design system of claim 2 wherein said sound processing criteria includes vehicle identification number (VIN) selectors.
 11. The digital sound processing design system of claim 2 wherein said sound processing criteria includes at least one of audio source selectors, vehicle type, and vehicle state.
 12. The digital sound processing design system of claim 8 further comprising a channel copier for copying said filter profiles from a first output channel to a second output channel.
 13. The digital sound processing design system of claim 2 further comprising a virtual input channel and a virtual output channel, wherein said virtual output channel is based in part on said first and second real input channels and wherein said virtual input channel is provided as an input to one output channel.
 14. The digital sound processing design system of claim 1 wherein said sound processing criteria includes surround sound processing of a radio source.
 15. The digital sound processing design system of claim 13 wherein said virtual channel output is speed dependent.
 16. The digital sound processing design system of claim 13 wherein said virtual channel output is also based on antother virtual channel output.
 17. A digital sound processing design system for a vehicle audio system, comprising: a computer; and a design tool run by said computer that allows a user to define sound processing criteria for first and second real channel inputs of an audio source, wherein said sound processing criteria defines a virtual input channel and a virtual output channel, and wherein said virtual output channel is partially based on said first and second real input channels.
 18. The digital sound processing design system of claim 17 further comprising: an audio signal processor that is connected to said first and second real channel inputs.
 19. The digital sound processing design system of claim 18 wherein said design tool stores said sound processing criteria in a template file.
 20. The digital sound processing design system of claim 18 further comprising: a sound processing engine that is coupled to said audio signal processor and that reads said template file at run time to obtain said sound processing criteria.
 21. The digital sound processing design system of claim 20 further comprising: memory that is associated with said audio signal processor and said sound processing engine and that stores said template file, wherein said memory is removably connected to said computer to receive said template file.
 22. The digital sound processing design system of claim 21 wherein said memory includes flash memory.
 23. The digital sound processing design system of claim 17 wherein said sound processing criteria includes a speed/gain function that varies a gain factor of at least one input channel as a function of vehicle speed.
 24. The digital sound processing design system of claim 17 wherein said sound processing criteria includes filter profiles that are applied to one of said first and second real channel inputs.
 25. The digital sound processing design system of claim 17 wherein said sound processing criteria includes gain settings that are applied to one of said first and second real channel inputs.
 26. The digital sound processing design system of claim 17 wherein said sound processing criteria includes vehicle identification number (VIN) selectors.
 27. The digital sound processing design system of claim 17 wherein said sound processing criteria includes audio source selectors.
 28. The digital sound processing design system of claim 17 further comprising a channel copier for copying filters from a first channel to a second channel. 